The present invention generally relates to a system and method for providing network services using redundant resources. In a more specific embodiment, the present invention relates to a system and method for providing a service over a wide area network using multiple data centers having redundant resources.
Network-accessible services are occasionally subject to disruptions or delays in service. For instance, storms and other environment-related disturbances may disable a service for a length of time. Equipment-related problems may also disable the service. In such circumstances, users may be prevented from logging onto the service while it is disabled. Further, users that were logged onto the service at the time of the disturbance may be summarily dropped, sometimes in midst of making a transaction. Alternatively, high traffic volume may render the users' interaction with the service sluggish.
Needless to say, consumers find interruptions and delays in network services frustrating. From the perspective of the service providers, such disruptions or delays may lead to the loss of clients, who may prefer to patronize more reliable and available sites. In extreme cases, disruptions or delays in service may render the provider liable to their consumers for corrupted data and/or lost opportunities attributed to the failure. Applications that are particularly sensitive to these service disruptions include time-sensitive financial services, such as on-line trading services, network-based control systems, etc.
For these reasons, network service providers have shown considerable interest in improving the availability of their services. One known technique involves simply storing a duplicate of a host site's database in an off-line archive (such as a magnetic tape archive) on a periodic basis. In the event of some type of major disruption of service (such as a weather-related disaster), the service administrators may recreate any lost data content by retrieving and transferring information from the off-line archive. This technique is referred to as cold backup because the standby resources are not immediately available for deployment.
Another known technique entails mirroring the content of the host site's active database in an on-line redundant database. In the event of a disruption, this technique involves utilizing the content of the standby database to perform an application. This technique is referred to as warm backup because the standby resources are available for deployment with minimal setup time.
The above-noted solutions are not fully satisfactory. The first technique (involving physically installing backup archives) may require an appreciable amount of time to perform (e.g., potentially several hours). Thus, this technique does not effectively minimize a user's frustration upon being denied access to a network service, or upon being dropped from a site in the course of a communication session. The second technique (involving actively maintaining a redundant database) provides more immediate relief upon the disruption of services, but may suffer other drawbacks. Namely, a redundant database that is located at the same general site as the primary database is likely to suffer the same disruption in services as the host site's primary database. Furthermore, even if this backup database does provide standby support in the event of disaster, it does not otherwise serve a useful functional role while the primary database remains active. Accordingly, this solution does not reduce traffic congestion during the normal operation of the service, and may even complicate these traffic problems.
Known efforts to improve network reliability and availability may suffer from additional unspecified drawbacks.
Accordingly, there is a need in the art to provide a more effective system and method for ensuring the reliability and integrity of network resources.